1. Field of the Invention
This invention is related to providing more robust transmission of facsimile calls over a network. Specifically, the invention provides a method and apparatus for detecting facsimile transmissions and reconfiguring the network to deal with the transmissions.
2. Description of Related Art
With the increase in interconnectivity between offices for Intranet applications, there is an increase in the transfer of both data and voice information. Accordingly, there is a growing application of routing calls off of the public switched telephone network (PSTN) and onto data networks. One current type of network that is used in many implementations is an Internet Protocol (IP) data network. Other network technologies that are currently implemented include such technology as asynchronous transfer mode (ATM) networks.
On IP networks, data, packaged in packets, is typically sent using one of two types of protocols. The first type of protocol, the user datagram protocol (UDP), delivers data quickly, but potentially unreliably. In addition, UDP does not provide notice so as to indicate whether messages have been received successfully.
The second type of protocol, Transmission Control Protocol (TCP) guarantees the integrity of transmitted data and notifies the sender of success or failure of the receipt of transmitted data. This guarantee is achieved through the use of acknowledgment messages and the resending of unreceived packets (i.e., retries for unsuccessful transmissions). However, using acknowledgment messages and subsequent retries add to the latency of each transmission, so the effective data transmission rate for TCP is lower than UDP.
Thus, there is a tradeoff between using UDP and TCP as both protocols have their advantages and disadvantages. UDP provides a fast transmission protocol with minimal delay but no guarantee as to delivery or sequence. TCP, on the other hand, provides guaranteed delivery of packets in the order in which they are sent. However, the robustness of TCP comes at a price of overhead in timing. The choice of which protocol to use necessarily depends on the needs of the application.
For example, near real-time information such as voice calls are typically transmitted over IP networks using UDP. UDP works well for transmitting voice information because UDP is a faster protocol, keeping delays down to a tolerable level. Usually, approximately 30 milliseconds of audio (e.g., voice information) are contained in each packet. Consequently, if a packet is lost during transmission, the conversation is not seriously affected. TCP is not normally used for transmission of near real-time audio information as too much delay may be introduced as acknowledgment is required for each packet and retransmission of lost packets is necessary.
In contrast to voice calls, facsimile calls require that the receiving facsimile machine receive all data sent by the sending facsimile machine. A lost packet means a page might not be correctly received, which requires that the page would then have to be retransmitted. Consequently, facsimile calls are typically sent via TCP. Facsimile calls can be sent by TCP as, unlike voice calls, facsimile calls can tolerate the latency in data transfer inherent in transmitting information by TCP.
Another consideration with sending voice and facsimile information over any data networkxe2x80x94not just IP networksxe2x80x94is that typically voice information is compressed using lossy algorithms (algorithms that do not exactly reproduce the input signal), allowing more voice calls per unit of bandwidth. Facsimile calls, however, cannot be compressed using lossy algorithms since all facsimile information sent must be received.
According to the International Telecommunication Union (ITU) Telecommunication Standardization Sector""s Recommendation T.30, a facsimile machine is either a manual facsimile machine or an automatic facsimile machine. Automatic facsimile machines can perform all of the following tasks automatically (i.e., without operator intervention): (1) call establishment and call release; (2) compatibility checking, status and control command; (3) checking and supervision of line conditions; and (4) control functions and facsimile operator recall. Manual facsimile machines, however, require operator assistance with one or more of the above listed tasks. An automatic facsimile machine is treated as a manual facsimile machine for any communications sessions during which an operator has to supervise one or more of the above-listed tasks.
During a facsimile call from one automatic facsimile machine (calling facsimile machine) to another automatic facsimile machine (called facsimile machine), the calling facsimile machine first dials the telephone number of the called facsimile machine and then begins to send a calling tone (CNG). When the called facsimile machine detects and answers the call, the called facsimile machine sends out a called tone (CED). Once both parties detect the respective tone sent by the other party, the facsimile transmission/receipt procedures are then followed to complete the facsimile call.
The problem of detecting and handling facsimile transmissions are present in any network where audio data is treated differently from other data. For example, where the network performs compression on audio data that does not allow the regeneration of the original data, facsimile data may not be faithfully reproduced if the facsimile data is treated like audio data and undergoes compression during transfer. Thus, in all networks where facsimile data is changed, facsimile calls might be adversely affected.
As facsimile calls need to be transmitted by TCP and voice calls by UDP, an IP gateway must determine if the call is a voice call or a facsimile call. Currently, IP gateways detect the CNG tones from a calling machine to identify that the call is a facsimile call. However, for a manual facsimile transmission, where a user manually dials the called facsimile machine, no CNG tone is usually sent by the calling facsimile machine. Therefore, the IP gateways involved in the call have no indication that communications need to be switched over to TCP for the duration of the call.
One solution is to have separate networks for voice and facsimile calls. This solution is more reliable, but is also more expensive. A duplicate set of equipment must be dedicated to the facsimile network and the voice network. Thus, all voice calls are carried by one network while a separate network carries all facsimile calls. Also, this method does not handle the situation of when a call is first started as a voice call, and then one party wishes to send a facsimile during the same call.
Therefore, it would be desirable to be able to handle manually initiated facsimile calls without the use of a dedicated network.
To detect facsimile calls sent over a data network, the present invention utilizes the detection of a called (CED) tone that is generated by a receiving facsimile machine. A processor located in a CED detection facility may perform the detection. The CED detection facility monitors calls that are sent over a data network, and, after the detection of a CED tone, configures the data network to transmit the facsimile call using a transmission protocol suitable for sending facsimile transmission.
In one embodiment, the data network is an Internet Protocol (IP) network and the signal processor is located in an IP gateway contained in the IP network. Once the detection is made, the facsimile call is transmitted using transmission control protocol (TCP) and in an uncompressed fashion. Non-facsimile calls may be transmitted in a lossy and a best-attempt mode of delivery.
In another embodiment, a set of signal processors is located on the network for providing CED detection for the facsimile calls of any facsimile devices on the network. Once detection has been made, the appropriate network devices through which the facsimile call passes are appropriately configured.
Thus, the present invention is capable of allowing the use of one network to transmit both voice and facsimile calls.